<?php
/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of Bitem
 *
 * @author Julio Arredondo
 */
class BitemController extends CI_Controller {
    //put your code here

    public function main(){
       
        $this->load->model("Bitem_Model", "", true);
        $lista_Bitems = $this->Bitem_Model->getAll();
        $this->load->view('bitem');
        if(!empty($lista_Bitems)){
            $this->gui_data($lista_Bitems, "lista_bitem");//se empaqueta para envio
            $this->load->view('form_bitem_tabla', $this->gui_data);
        }
    }

    public function generar_renglon_tabla($id){
        $this->load->model("Bitem_Model", "", true);
        $Bitem = $this->Bitem_Model->get($id); //definir esto
        $this->gui_data($Bitem);
        $this->load->view('form_bitem_renglon', $this->gui_data);
    }

    public function showForm($estado = null, $id = 0){
        
        $this->load->model("Usuario_model", "", true);
        $lista_usuarios = $this->Usuario_model->getAll();
        $this->gui_data($lista_usuarios, "lista_usuarios");
		
		$this->load->model("Proyecto_Model", "", true);
        $lista_proyectos = $this->Proyecto_Model->getAll();
        $this->gui_data($lista_proyectos, "lista_proyectos");
		
        
        switch ($estado) {
            case "update":
                $this->load->model("Bitem_Model", "", true);
                $Bitem = $this->Bitem_Model->get($id); //definir esto
                $this->gui_data($Bitem);
                $this->gui_data($lista_usuarios, "lista_usuarios");
				 $this->gui_data($lista_proyectos, "lista_proyectos");
                $this->load->view('form_bitem_update', $this->gui_data);
				
            break;
            case "info":
                $this->load->model("Bitem_Model", "", true);
                $Bitem = $this->Bitem_Model->get($id); //definir esto
                $this->gui_data($Bitem);
                $this->gui_data($lista_usuarios, "lista_usuarios");
                $this->load->view('form_bitem_info', $this->gui_data);
            break;        
            default:
                $this->load->view('form_bitem', $this->gui_data);
            break;
        }

    }

    public function create(){

     	$this->load->model("Bitem_Model", "", true);
         try{
            $mensaje =$this->Bitem_Model->create();
            $exito = true;
         }catch(Exception $e){
            $exito = false;
            $mensaje = $e->getMessage();
         }
          
         $this->json_response($exito, $mensaje);
		 
      }

   
   
    public function get($id){
        $this->load->model("Bitem_Model");
        $algo = $this->Bitem_Model->get($id);
    }   

    public function update(){
       $this->load->Model("Bitem_Model", "",true);
       try{
           $mensaje = $this->Bitem_Model->update();
           $exito = true;
       }catch(Exception $e){
           $exito = false;
           $mensaje = $e->getMessage();
       }
		
       $this->json_response($exito, $mensaje);
	   
    }    

    public function delete($id){
       $this->load->Model("Bitem_Model", "", true);
       try{
           $mensaje = $this->Bitem_Model->delete($id);
           $exito = true;
       }catch(Exception $e){
           $exito = false;
           $mensaje = $e->getMessage();
       }

       $this->json_response($exito, $mensaje);
	   
    }
    
    public function validate_Bitem($Bitem = false){
        
        if(!$Bitem)$Bitem = $this->input->post("nombre_bitem");

        $this->load->model("Bitem_Model", "", true);
        $exito = true;
        $mensaje = "Bitem inexistente";
        if($this->Bitem_Model->exist_bitem($Bitem)){
            $mensaje = "Ese item ya esta registrado";
            $exito = false;
        }
        $this->json_response($exito, $mensaje);
    }

    public function validate_create(){
        //cargar modelo
        $exito = false;
        if($this->validate_Bitem()){
            $mensaje = "El item ya existe";
        }
        else{
            $exito = true;
            $mensaje = "Bitem validado correctamente";
        }

        $this->json_response($exito, $mensaje);
    }

}
?>